home *** CD-ROM | disk | FTP | other *** search
/ Chip 1998 September / CHIP Eylül 1998.iso / Slackwar / docs / mini / Soundblaster-16 < prev    next >
Text File  |  1997-01-19  |  4KB  |  128 lines

  1. Linux Soundblaster 16 PnP Mini-Howto
  2. by Eric Z. Ayers <Eric.Ayers@compgen.com>
  3. v1.0, 14 January 1997
  4.  
  5. To my delight, my wife gave me a shiny new soundcard for my birthday.  
  6. Unfortunately, it was a Soundblaster 16 PnP which refused to work under 
  7. Linux.  In fact, my 3com 3c509 would not work under Linux either.
  8.  
  9. I finally got my hardware working, with the Linux sound driver that comes
  10. with the kernel and the isapnp package from 
  11. ftp://ftp.redhat.com/pub/utils/isapnptools-1.8.tgz 
  12.  
  13. It turns out that there were 2 major obstacles I faced to get the soundcard 
  14. to work.  The first obstacle was that I didn't know the IRQ's and IO ports 
  15. to talk to the sound card.  That is solved with the isapnptools package.  The 
  16. second problem was with the 3c509 ethernet card. It seemed that no matter
  17. how I changed the settings on the card, the Linux kernel would not recognize 
  18. the ethernet  card.  It turns out that there is a device on the sound card 
  19. which is in conflict with the 3c509 probing code. 
  20.  
  21.  
  22. 1) Install the isapnp package.  Edit /etc/isapnp.conf so that the IRQ and IO 
  23.    ports the sound cards use don't conflict with any of your other devices.
  24.  
  25. 2) Build the linux kernel.  Build the sound support as a Module at the IRQ, 
  26.    IO and DMA adresses configured in isapnp.conf.  Also build your 3c509 
  27.    driver as a module.  (Don't forget to run make modules and 
  28.    make modules_install after compiling and installing your kernel)
  29.  
  30. 3) Modify the boots scripts on your system.
  31.  
  32. I am running a Slackware installation and kernel revision 2.0.23.  Before
  33. the network is configured, I run the isapnp program (in /etc/rc.d/rc.M right 
  34. after the hostname is set:
  35.  
  36.  
  37. # EZA
  38. # Setup plug and play devices
  39. /sbin/isapnp /etc/isapnp.conf
  40.  
  41.  
  42. Then, the first thing in /etc/rc.d/rc.inet1 I load the network driver
  43.  
  44.  
  45. # EZA
  46. # Load networking card module
  47. /sbin/insmod 3c509
  48.  
  49. I just ignore the warning at boot time that run-time probing for the 
  50. ethernet card won't work because it has never failed for me. Finally,
  51. in /etc/rc.d/rc.local I insert the sound driver module: 
  52.  
  53.  
  54. /sbin/insmod sound
  55.  
  56.  
  57. More information about Linux plug and play is available from:
  58. http://www.redhat.com/linux-info/pnp/
  59. I'm now happly surfing the net using the Real-Audio player and listening 
  60. to CDs on my cdrom drive! 
  61.  
  62. Eric Ayers
  63. eric.ayers@compgen.com
  64.  
  65. ---------------------------------------------------------------------------
  66. Here's a copy of my isapnp.conf file with most of the comments removed.
  67.  
  68. # Trying port address 0203
  69. # Board 1 has serial identifier 67 00 00 40 17 2b 00 8c 0e
  70.  
  71. # (DEBUG)
  72. (READPORT 0x0203)
  73. (ISOLATE)
  74. (IDENTIFY *)
  75.  
  76. # Card 1: (serial identifier 67 00 00 40 17 2b 00 8c 0e)
  77. # CTL002b Serial No 16407 [checksum 67]
  78. # Version 1.0, Vendor version 2.0
  79. # ANSI string -->Creative SB16 PnP<--
  80. #
  81. # Logical device id CTL0031
  82. #
  83. # Edit the entries below to uncomment out the configuration required.
  84. # Note that only the first value of any range is given, this may be changed if required
  85. # Don't forget to uncomment the activate (ACT Y) when happy
  86.  
  87. (CONFIGURE CTL002b/16407 (LD 0
  88. #     ANSI string -->Audio<--
  89.  
  90. # Multiple choice time, choose one only !
  91.  
  92. #     Start dependent functions: priority preferred
  93. #       IRQ 5.
  94. #             High true, edge sensitive interrupt (by default)
  95. (INT 0 (IRQ 5 (MODE +E)))
  96. (DMA 0 (CHANNEL 1))
  97. (DMA 1 (CHANNEL 5))
  98. (IO 0 (BASE 0x0220))
  99. (IO 1 (BASE 0x0330))
  100. (IO 2 (BASE 0x0388))
  101. (ACT Y)
  102. ))
  103.  
  104. (CONFIGURE CTL002b/16407 (LD 1
  105. (INT 0 (IRQ 11 (MODE +E)))
  106. (IO 0 (BASE 0x01e8))
  107. (IO 1 (BASE 0x03ee))
  108.  (ACT Y)
  109. ))
  110.  
  111.  
  112. (CONFIGURE CTL002b/16407 (LD 2
  113. #     ANSI string -->StereoEnhance<--
  114. #     Logical device decodes 16 bit IO address lines
  115. #         Minimum IO base address 0x0100
  116. #         Maximum IO base address 0x0138
  117. #         IO base alignment 8 bytes
  118. #         Number of IO addresses required: 1
  119. #(IO 0 (BASE 0x0100))
  120. #(ACT Y)
  121. ))
  122.  
  123.  
  124. (CONFIGURE CTL002b/16407 (LD 3
  125. (IO 0 (BASE 0x0200))
  126. (ACT Y)))
  127.  
  128.